import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 黎鹤舞
 * Date: 2023-11-03
 * Time: 0:02
 */
public class Test {

    //在同一个类中定义多个方法：要求不仅可以求2个整数的最大值，还可以求3个小数的最大值？
    //求两个整数最大值
    public static int max(int x, int y) {
        if(x > y) {
            return x;
        }else {
            return y;
        }
    }
    public static double max(double a, double b, double c) {
        double max = 0.0;
        if(a > b) {
            max = a;
        }else {
            max = b;
        }
        if(max > c) {
            return max;
        }else {
            return c;
        }
    }
    public static void main(String[] args) {
        int ret1 = max(10,9);
        System.out.println(ret1);
        double ret2 = max(1.1,11.1,5);
        System.out.println(ret2);
    }



    //方法的重载:
    //在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。 并执行代码，求出结果

    //这是求两个整数的方法
    public static int add(int a, int b) {
        int sum = a + b;
        return sum;
    }
    //这是三个小数之和的方法
    public static double add(double x, double y, double z) {
        double sum = x + y + z;
        return sum;
    }
    public static void main7(String[] args) {
        int ret = add(1,3);
        System.out.println(ret);
        double ret2 = add(1.1,2.2,3.3);
        System.out.println(ret2);
    }



    //求斐波那契数列的第n项。(迭代实现)
    public static void main6(String[] args) {
        int a = 1;
        int b = 1;
        int c = 2;
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入你要求的项数:");
        int n = scanner.nextInt();
        //如果输入在前两项中
        if(n <= 2) {
            if(n == 1 || n == 2) {
                System.out.println(1);
            }else {
                System.out.println("这是一个错误的输入！！！");
            }
        }else {
            for (int i = 3; i <= n; i++) {
                c = a + b;
                a = b;
                b = c;
            }
        }
        System.out.println(c);
        scanner.close();
    }



    //创建方法求两个数的最大值max2，随后再写一个求3个数的最大值的函数max3。
    //要求：在max3这个函数中，调用max2函数，来实现3个数的最大值计算

    public static int max3(int x,int y,int z) {
        int max = max2(x,y);
        max = max2(max,z);
        return max;
    }
    public static int max2(int a ,int b) {          //求两个数中的最大值 的max2方法
        if(a > b) {
            return a;
        }else {
            return b;
        }
    }
    public static void main5(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入两个正整数:");
        int num1 = scanner.nextInt();
        int num2 = scanner.nextInt();
        int ret = max2(num1,num2);
        System.out.println("这两个数中最大数为:" + ret);
        System.out.println("请在输入一个正整数:");
        int num3 = scanner.nextInt();
        ret = max3(num1,num2,num3);
        System.out.println("这三个数中最大的数是:" + ret);
        scanner.close();

    }


    //编写代码模拟三次密码输入的场景。
    // 最多能输入三次密码，密码正确，提示“登录成功”,密码错误， 可以重新输入，最多输入三次。三次均错，则提示退出程序
    public static void main4(String[] args) {
        String str = "123-+abc";
        System.out.println("请输入密码");
        Scanner scanner = new Scanner(System.in);
        for (int i = 0; i < 3; i++) {
            String str2 = scanner.nextLine();
            if(str2.equals(str)) {
                System.out.println("登陆成功！！！");
            }else {
                System.out.println("登陆失败，您还有" + (2 - i) + "次机会！！！");
            }

        }
        System.out.println("您输入错误次数过多，程序已退出!!!");
        scanner.close();
    }


    //输出一个整数的每一位，如：123的每一位是3，2，1
    public static void main3(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入一个数:");
        int num = scanner.nextInt();
        if(num == 0) {
            System.out.println(0);
        }else {
            while (num != 0) {
                System.out.println(num % 10);
                num /= 10;
            }
        }
        scanner.close();
    }


    //计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
    public static void main2(String[] args) {
        double sum = 0.0;
        double k = 0.0;
        int flag = 1;
        for (int i = 1; i <= 100; i++) {
            sum += (double) flag * (1.0 / i);
            flag *= -1;
        }
        System.out.println(sum);
    }


    //根据输入打印一个X图案(要求循环输入)
    public static void main1(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int num = scanner.nextInt();
            for (int i = 1; i <= num; i++) {
                for (int j = 1; j <= num; j++) {
                    if(j == i || j == num - i + 1) {
                        System.out.print("*");
                    }else {
                        System.out.print(" ");
                    }
                }
                System.out.println();
            }
        }
        scanner.close();
    }

}
